package com.service;

import com.pojo.SysDept;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SysDeptService {

    List<SysDept> selectDeptList(SysDept dept);

    /**
     * 构建前端所需要树结构
     * 树结构列表
     */
    List<SysDept> buildDeptTree(List<SysDept> depts);

    /**
     * 构建前端所需要下拉树结构
     * 下拉树结构列表
     */
    List<SysDept> buildDeptTreeSelect(List<SysDept> depts);

    boolean hasChild(List<SysDept> list, SysDept t);

    List<SysDept> getChildList(List<SysDept> list, SysDept t);

    void recursionFn(List<SysDept> list, SysDept t);

    int add(SysDept sysDept);

    int edit(SysDept dept);

    int del(@Param("deptId") Integer id);

    SysDept view(@Param("deptId") Integer id);

    List<SysDept> list();
}
